/*
 * Copyright 2018 The JA-SIG Collaborative. All rights reserved.
 * distributed with thi file and available online at
 */
package com.lap.codegen.dal;

import com.lap.codegen.domain.DbConf;
import com.lap.codegen.domain.Table;
import com.lap.codegen.exception.DbException;

import java.util.List;

/**
 * <pre>
 * 提供获取数据库表相关的操作接口
 * </pre>
 *
 * @author 劳水生 , 021(poker0325@me.com)
 * @version 1.0.0
 */
public interface DbDAO {
    /**
     * <pre>
     * 根据数据源的连接串，帐号，密码查询数据库表信息
     * </pre>
     *
     * @param conf 配置信息
     * @return
     * @throws DbException 访问异常
     */
    List<Table> queryGeneral(DbConf conf) throws DbException;

    /**
     * <pre>
     * 根据数据源，表名集合查询具体的表结构信息
     * </pre>
     *
     * @param conf       数据库配置
     * @param tableNames 需要查询的表名
     * @return
     * @throws DbException 访问异常
     */
    List<Table> queryByTableName(DbConf conf, List<String> tableNames) throws DbException;

}
